﻿using MessagePack;

namespace StudentAgeSaveEditor.GameData.Condition
{
    [Union(0, typeof(ConditionerAge))]
    [Union(1, typeof(ConditionerAttr))]
    [Union(2, typeof(ConditionerCharacter))]
    [Union(3, typeof(ConditionerDate))]
    [Union(4, typeof(ConditionerEvent))]
    [Union(5, typeof(ConditionerEventValue))]
    [Union(6, typeof(ConditionerItem))]
    [Union(7, typeof(ConditionerKnowledge))]
    [Union(8, typeof(ConditionerOtherAttr))]
    [Union(9, typeof(ConditionerRandom))]
    [Union(10, typeof(ConditionerRandom2))]
    [Union(11, typeof(ConditionerRelation))]
    [Union(12, typeof(ConditionerSkill))]
    [Union(13, typeof(ConditionerStatus))]
    [Union(14, typeof(ConditionerLove))]
    [Union(15, typeof(ConditionerAction))]
    [Union(16, typeof(ConditionerDIY))]
    [Union(17, typeof(ConditionerGame))]
    [Union(18, typeof(ConditionerWriting))]
    [Union(19, typeof(ConditionerReading))]
    [Union(20, typeof(ConditionerGoal))]
    [Union(21, typeof(ConditionerNegotiation))]
    [Union(22, typeof(ConditionerUI))]
    [Union(23, typeof(ConditionerBasketball))]
    [Union(24, typeof(ConditionerParty))]
    [Union(25, typeof(ConditionerSpecial))]
   public abstract class  Conditioner
    {
        protected Conditioner parent;

        protected List<double> condition;

        public char split = '\n';

        public int subType;
    }
}
